package com.molichuxing.services.property;

/**
 * @Author: zhaopenghui
 * @Description: 合同状态
 * @Date: Created in 15:47 2019/9/11
 * @Modified By:
 **/
public enum ContractStatusEnum {
    /**
     * 生效中
     */
    EFFECTIVE(1, "生效中"),

    /**
     * 自然失效
     */
    EXPIRE_NONEFFECTIVE(2, "自然失效"),
    /**
     * 协商失效
     */
    NEGOTIATE_NONEFFECTIVE(3, "协商失效"),
    /**
     * 已终止
     */
    TERMINATED(4, "已终止");

    int value;
    String name;

    ContractStatusEnum(int value, String name) {
        this.value = value;
        this.name = name;
    }

    public int getValue() {
        return value;
    }

    public String getName() {
        return name;
    }

    /**
     * 通过value获取枚举的name
     *
     * @param value
     * @return
     */
    public static String getName(int value) {
        ContractStatusEnum enumerate = getEnum(value);
        return enumerate == null ? null : enumerate.getName();
    }

    /**
     * 通过value获取枚举
     *
     * @param value
     * @return
     */
    public static ContractStatusEnum getEnum(int value) {
        for (ContractStatusEnum enumerate : ContractStatusEnum.values()) {
            if (enumerate.getValue() == value) {
                return enumerate;
            }
        }
        return null;
    }
}
